home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1998 January: Mac OS SDK / Dev.CD Jan 98 SDK1.toast / Development Kits (Disc 1) / Interfaces&Libraries / Universal / Interfaces / AIncludes / QD3DController.a < prev    next >
Encoding:
Text File  |  1997-08-12  |  12.7 KB  |  412 lines  |  [TEXT/MPS ]

  1. ;
  2. ;    File:        QD3DController.a
  3. ;
  4. ;    Contains:    Q3Controller methods    
  5. ;
  6. ;    Version:    Technology:    Quickdraw 3D 1.5.1
  7. ;                Release:    Universal Interfaces 3.0.1
  8. ;
  9. ;    Copyright:    © 1995-1997 by Apple Computer, Inc., all rights reserved.
  10. ;
  11. ;    Bugs?:        Please include the the file and version information (from above) with
  12. ;                the problem description.  Developers belonging to one of the Apple
  13. ;                developer programs can submit bug reports to:
  14. ;
  15. ;                    devsupport@apple.com
  16. ;
  17. ;
  18.     IF &TYPE('__QD3DCONTROLLER__') = 'UNDEFINED' THEN
  19. __QD3DCONTROLLER__ SET 1
  20.  
  21.     IF &TYPE('__QD3D__') = 'UNDEFINED' THEN
  22.     include 'QD3D.a'
  23.     ENDIF
  24.  
  25. ; ******************************************************************************
  26. ; **                                                                             **
  27. ; **                                Type Definitions                             **
  28. ; **                                                                             **
  29. ; ****************************************************************************
  30.  
  31. TQ3ControllerData        RECORD 0
  32. signature                 ds.l    1                ; offset: $0 (0)
  33. valueCount                 ds.l    1                ; offset: $4 (4)
  34. channelCount             ds.l    1                ; offset: $8 (8)
  35. channelGetMethod         ds.l    1                ; offset: $C (12)
  36. channelSetMethod         ds.l    1                ; offset: $10 (16)
  37. sizeof                     EQU *                    ; size:   $14 (20)
  38.                         ENDR
  39. ; ******************************************************************************
  40. ; **                                                                             **
  41. ; **                                     Routines                                 **
  42. ; **                                                                             **
  43. ; ****************************************************************************
  44.  
  45. ;
  46. ; extern TQ3Status Q3Controller_GetListChanged(TQ3Boolean *listChanged, unsigned long *serialNumber)
  47. ;
  48.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  49.         IMPORT_CFM_FUNCTION Q3Controller_GetListChanged
  50.     ENDIF
  51.  
  52. ;
  53. ; extern TQ3Status Q3Controller_Next(TQ3ControllerRef controllerRef, TQ3ControllerRef *nextControllerRef)
  54. ;
  55.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  56.         IMPORT_CFM_FUNCTION Q3Controller_Next
  57.     ENDIF
  58.  
  59. ;
  60. ; extern TQ3ControllerRef Q3Controller_New(const TQ3ControllerData *controllerData)
  61. ;
  62.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  63.         IMPORT_CFM_FUNCTION Q3Controller_New
  64.     ENDIF
  65.  
  66. ;
  67. ; extern TQ3Status Q3Controller_Decommission(TQ3ControllerRef controllerRef)
  68. ;
  69.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  70.         IMPORT_CFM_FUNCTION Q3Controller_Decommission
  71.     ENDIF
  72.  
  73. ;
  74. ; extern TQ3Status Q3Controller_SetActivation(TQ3ControllerRef controllerRef, TQ3Boolean active)
  75. ;
  76.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  77.         IMPORT_CFM_FUNCTION Q3Controller_SetActivation
  78.     ENDIF
  79.  
  80. ;
  81. ; extern TQ3Status Q3Controller_GetActivation(TQ3ControllerRef controllerRef, TQ3Boolean *active)
  82. ;
  83.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  84.         IMPORT_CFM_FUNCTION Q3Controller_GetActivation
  85.     ENDIF
  86.  
  87. ;
  88. ; extern TQ3Status Q3Controller_GetSignature(TQ3ControllerRef controllerRef, char *signature, unsigned long numChars)
  89. ;
  90.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  91.         IMPORT_CFM_FUNCTION Q3Controller_GetSignature
  92.     ENDIF
  93.  
  94. ;
  95. ; extern TQ3Status Q3Controller_SetChannel(TQ3ControllerRef controllerRef, unsigned long channel, const void *data, unsigned long dataSize)
  96. ;
  97.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  98.         IMPORT_CFM_FUNCTION Q3Controller_SetChannel
  99.     ENDIF
  100.  
  101. ;
  102. ; extern TQ3Status Q3Controller_GetChannel(TQ3ControllerRef controllerRef, unsigned long channel, void *data, unsigned long *dataSize)
  103. ;
  104.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  105.         IMPORT_CFM_FUNCTION Q3Controller_GetChannel
  106.     ENDIF
  107.  
  108. ;
  109. ; extern TQ3Status Q3Controller_GetValueCount(TQ3ControllerRef controllerRef, unsigned long *valueCount)
  110. ;
  111.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  112.         IMPORT_CFM_FUNCTION Q3Controller_GetValueCount
  113.     ENDIF
  114.  
  115. ;
  116. ; extern TQ3Status Q3Controller_SetTracker(TQ3ControllerRef controllerRef, TQ3TrackerObject tracker)
  117. ;
  118.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  119.         IMPORT_CFM_FUNCTION Q3Controller_SetTracker
  120.     ENDIF
  121.  
  122. ;
  123. ; extern TQ3Status Q3Controller_HasTracker(TQ3ControllerRef controllerRef, TQ3Boolean *hasTracker)
  124. ;
  125.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  126.         IMPORT_CFM_FUNCTION Q3Controller_HasTracker
  127.     ENDIF
  128.  
  129. ;
  130. ; extern TQ3Status Q3Controller_Track2DCursor(TQ3ControllerRef controllerRef, TQ3Boolean *track2DCursor)
  131. ;
  132.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  133.         IMPORT_CFM_FUNCTION Q3Controller_Track2DCursor
  134.     ENDIF
  135.  
  136. ;
  137. ; extern TQ3Status Q3Controller_Track3DCursor(TQ3ControllerRef controllerRef, TQ3Boolean *track3DCursor)
  138. ;
  139.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  140.         IMPORT_CFM_FUNCTION Q3Controller_Track3DCursor
  141.     ENDIF
  142.  
  143. ;
  144. ; extern TQ3Status Q3Controller_GetButtons(TQ3ControllerRef controllerRef, unsigned long *buttons)
  145. ;
  146.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  147.         IMPORT_CFM_FUNCTION Q3Controller_GetButtons
  148.     ENDIF
  149.  
  150. ;
  151. ; extern TQ3Status Q3Controller_SetButtons(TQ3ControllerRef controllerRef, unsigned long buttons)
  152. ;
  153.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  154.         IMPORT_CFM_FUNCTION Q3Controller_SetButtons
  155.     ENDIF
  156.  
  157. ;
  158. ; extern TQ3Status Q3Controller_GetTrackerPosition(TQ3ControllerRef controllerRef, TQ3Point3D *position)
  159. ;
  160.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  161.         IMPORT_CFM_FUNCTION Q3Controller_GetTrackerPosition
  162.     ENDIF
  163.  
  164. ;
  165. ; extern TQ3Status Q3Controller_SetTrackerPosition(TQ3ControllerRef controllerRef, const TQ3Point3D *position)
  166. ;
  167.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  168.         IMPORT_CFM_FUNCTION Q3Controller_SetTrackerPosition
  169.     ENDIF
  170.  
  171. ;
  172. ; extern TQ3Status Q3Controller_MoveTrackerPosition(TQ3ControllerRef controllerRef, const TQ3Vector3D *delta)
  173. ;
  174.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  175.         IMPORT_CFM_FUNCTION Q3Controller_MoveTrackerPosition
  176.     ENDIF
  177.  
  178. ;
  179. ; extern TQ3Status Q3Controller_GetTrackerOrientation(TQ3ControllerRef controllerRef, TQ3Quaternion *orientation)
  180. ;
  181.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  182.         IMPORT_CFM_FUNCTION Q3Controller_GetTrackerOrientation
  183.     ENDIF
  184.  
  185. ;
  186. ; extern TQ3Status Q3Controller_SetTrackerOrientation(TQ3ControllerRef controllerRef, const TQ3Quaternion *orientation)
  187. ;
  188.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  189.         IMPORT_CFM_FUNCTION Q3Controller_SetTrackerOrientation
  190.     ENDIF
  191.  
  192. ;
  193. ; extern TQ3Status Q3Controller_MoveTrackerOrientation(TQ3ControllerRef controllerRef, const TQ3Quaternion *delta)
  194. ;
  195.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  196.         IMPORT_CFM_FUNCTION Q3Controller_MoveTrackerOrientation
  197.     ENDIF
  198.  
  199. ;
  200. ; extern TQ3Status Q3Controller_GetValues(TQ3ControllerRef controllerRef, unsigned long valueCount, float *values, TQ3Boolean *changed, unsigned long *serialNumber)
  201. ;
  202.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  203.         IMPORT_CFM_FUNCTION Q3Controller_GetValues
  204.     ENDIF
  205.  
  206. ;
  207. ; extern TQ3Status Q3Controller_SetValues(TQ3ControllerRef controllerRef, const float *values, unsigned long valueCount)
  208. ;
  209.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  210.         IMPORT_CFM_FUNCTION Q3Controller_SetValues
  211.     ENDIF
  212.  
  213.  
  214. ; ******************************************************************************
  215. ; **                                                                             **
  216. ; **                                     Routines                                 **
  217. ; **                                                                             **
  218. ; ****************************************************************************
  219.  
  220. ;
  221. ; extern TQ3ControllerStateObject Q3ControllerState_New(TQ3ControllerRef controllerRef)
  222. ;
  223.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  224.         IMPORT_CFM_FUNCTION Q3ControllerState_New
  225.     ENDIF
  226.  
  227. ;
  228. ; extern TQ3Status Q3ControllerState_SaveAndReset(TQ3ControllerStateObject controllerStateObject)
  229. ;
  230.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  231.         IMPORT_CFM_FUNCTION Q3ControllerState_SaveAndReset
  232.     ENDIF
  233.  
  234. ;
  235. ; extern TQ3Status Q3ControllerState_Restore(TQ3ControllerStateObject controllerStateObject)
  236. ;
  237.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  238.         IMPORT_CFM_FUNCTION Q3ControllerState_Restore
  239.     ENDIF
  240.  
  241.  
  242. ; ******************************************************************************
  243. ; **                                                                             **
  244. ; **                                Type Definitions                             **
  245. ; **                                                                             **
  246. ; ****************************************************************************
  247.  
  248. ; ******************************************************************************
  249. ; **                                                                             **
  250. ; **                                     Routines                                 **
  251. ; **                                                                             **
  252. ; ****************************************************************************
  253.  
  254. ;
  255. ; extern TQ3TrackerObject Q3Tracker_New(TQ3TrackerNotifyFunc notifyFunc)
  256. ;
  257.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  258.         IMPORT_CFM_FUNCTION Q3Tracker_New
  259.     ENDIF
  260.  
  261. ;
  262. ; extern TQ3Status Q3Tracker_SetNotifyThresholds(TQ3TrackerObject trackerObject, float positionThresh, float orientationThresh)
  263. ;
  264.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  265.         IMPORT_CFM_FUNCTION Q3Tracker_SetNotifyThresholds
  266.     ENDIF
  267.  
  268. ;
  269. ; extern TQ3Status Q3Tracker_GetNotifyThresholds(TQ3TrackerObject trackerObject, float *positionThresh, float *orientationThresh)
  270. ;
  271.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  272.         IMPORT_CFM_FUNCTION Q3Tracker_GetNotifyThresholds
  273.     ENDIF
  274.  
  275. ;
  276. ; extern TQ3Status Q3Tracker_SetActivation(TQ3TrackerObject trackerObject, TQ3Boolean active)
  277. ;
  278.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  279.         IMPORT_CFM_FUNCTION Q3Tracker_SetActivation
  280.     ENDIF
  281.  
  282. ;
  283. ; extern TQ3Status Q3Tracker_GetActivation(TQ3TrackerObject trackerObject, TQ3Boolean *active)
  284. ;
  285.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  286.         IMPORT_CFM_FUNCTION Q3Tracker_GetActivation
  287.     ENDIF
  288.  
  289. ;
  290. ; extern TQ3Status Q3Tracker_GetButtons(TQ3TrackerObject trackerObject, unsigned long *buttons)
  291. ;
  292.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  293.         IMPORT_CFM_FUNCTION Q3Tracker_GetButtons
  294.     ENDIF
  295.  
  296. ;
  297. ; extern TQ3Status Q3Tracker_ChangeButtons(TQ3TrackerObject trackerObject, TQ3ControllerRef controllerRef, unsigned long buttons, unsigned long buttonMask)
  298. ;
  299.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  300.         IMPORT_CFM_FUNCTION Q3Tracker_ChangeButtons
  301.     ENDIF
  302.  
  303. ;
  304. ; extern TQ3Status Q3Tracker_GetPosition(TQ3TrackerObject trackerObject, TQ3Point3D *position, TQ3Vector3D *delta, TQ3Boolean *changed, unsigned long *serialNumber)
  305. ;
  306.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  307.         IMPORT_CFM_FUNCTION Q3Tracker_GetPosition
  308.     ENDIF
  309.  
  310. ;
  311. ; extern TQ3Status Q3Tracker_SetPosition(TQ3TrackerObject trackerObject, TQ3ControllerRef controllerRef, const TQ3Point3D *position)
  312. ;
  313.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  314.         IMPORT_CFM_FUNCTION Q3Tracker_SetPosition
  315.     ENDIF
  316.  
  317. ;
  318. ; extern TQ3Status Q3Tracker_MovePosition(TQ3TrackerObject trackerObject, TQ3ControllerRef controllerRef, const TQ3Vector3D *delta)
  319. ;
  320.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  321.         IMPORT_CFM_FUNCTION Q3Tracker_MovePosition
  322.     ENDIF
  323.  
  324. ;
  325. ; extern TQ3Status Q3Tracker_GetOrientation(TQ3TrackerObject trackerObject, TQ3Quaternion *orientation, TQ3Quaternion *delta, TQ3Boolean *changed, unsigned long *serialNumber)
  326. ;
  327.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  328.         IMPORT_CFM_FUNCTION Q3Tracker_GetOrientation
  329.     ENDIF
  330.  
  331. ;
  332. ; extern TQ3Status Q3Tracker_SetOrientation(TQ3TrackerObject trackerObject, TQ3ControllerRef controllerRef, const TQ3Quaternion *orientation)
  333. ;
  334.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  335.         IMPORT_CFM_FUNCTION Q3Tracker_SetOrientation
  336.     ENDIF
  337.  
  338. ;
  339. ; extern TQ3Status Q3Tracker_MoveOrientation(TQ3TrackerObject trackerObject, TQ3ControllerRef controllerRef, const TQ3Quaternion *delta)
  340. ;
  341.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  342.         IMPORT_CFM_FUNCTION Q3Tracker_MoveOrientation
  343.     ENDIF
  344.  
  345. ;
  346. ; extern TQ3Status Q3Tracker_SetEventCoordinates(TQ3TrackerObject trackerObject, unsigned long timeStamp, unsigned long buttons, const TQ3Point3D *position, const TQ3Quaternion *orientation)
  347. ;
  348.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  349.         IMPORT_CFM_FUNCTION Q3Tracker_SetEventCoordinates
  350.     ENDIF
  351.  
  352. ;
  353. ; extern TQ3Status Q3Tracker_GetEventCoordinates(TQ3TrackerObject trackerObject, unsigned long timeStamp, unsigned long *buttons, TQ3Point3D *position, TQ3Quaternion *orientation)
  354. ;
  355.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  356.         IMPORT_CFM_FUNCTION Q3Tracker_GetEventCoordinates
  357.     ENDIF
  358.  
  359. ; ******************************************************************************
  360. ; **                                                                             **
  361. ; **                                 Types                                         **
  362. ; **                                                                             **
  363. ; ****************************************************************************
  364.  
  365. ; ******************************************************************************
  366. ; **                                                                             **
  367. ; **                                 Routines                                     **
  368. ; **                                                                             **
  369. ; ****************************************************************************
  370.  
  371. ;
  372. ; extern TQ3Status Q3CursorTracker_PrepareTracking(void )
  373. ;
  374.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  375.         IMPORT_CFM_FUNCTION Q3CursorTracker_PrepareTracking
  376.     ENDIF
  377.  
  378. ;
  379. ; extern TQ3Status Q3CursorTracker_SetTrackDeltas(TQ3Boolean trackDeltas)
  380. ;
  381.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  382.         IMPORT_CFM_FUNCTION Q3CursorTracker_SetTrackDeltas
  383.     ENDIF
  384.  
  385. ;
  386. ; extern TQ3Status Q3CursorTracker_GetAndClearDeltas(float *depth, TQ3Quaternion *orientation, TQ3Boolean *hasOrientation, TQ3Boolean *changed, unsigned long *serialNumber)
  387. ;
  388.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  389.         IMPORT_CFM_FUNCTION Q3CursorTracker_GetAndClearDeltas
  390.     ENDIF
  391.  
  392. ;
  393. ; extern TQ3Status Q3CursorTracker_SetNotifyFunc(TQ3CursorTrackerNotifyFunc notifyFunc)
  394. ;
  395.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  396.         IMPORT_CFM_FUNCTION Q3CursorTracker_SetNotifyFunc
  397.     ENDIF
  398.  
  399. ;
  400. ; extern TQ3Status Q3CursorTracker_GetNotifyFunc(TQ3CursorTrackerNotifyFunc *notifyFunc)
  401. ;
  402.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  403.         IMPORT_CFM_FUNCTION Q3CursorTracker_GetNotifyFunc
  404.     ENDIF
  405.  
  406.  
  407.  
  408.  
  409.  
  410.     ENDIF ; __QD3DCONTROLLER__ 
  411.  
  412.